package MVC.model;

import java.io.IOException;
import java.util.ArrayList;

import myAsm.MyClassNode;
import myAsm.MyJarNode;
import myAsm.MyMethodNode;
import myAsm.MyPackageNode;

import MVC.Exceptions.CPException;
import MVC.listeners.ProgressListener;
import MVC.listeners.ReturnListener;
import MVC.listeners.TextListener;

public interface IModel {

	public ArrayList<MyJarNode> createJarList();
	public ArrayList<MyPackageNode> createPackageList(String jarID);
	public ArrayList<MyClassNode> createClassList(String pkgID);
	public ArrayList<MyMethodNode> createMethodList(String clsID);
	public void fillDataBase(String jar,ProgressListener listener) throws IOException;
	public void RunCheck(ArrayList<String> testsToRun,String ID,String checkType, TextListener Tlistener,ReturnListener Rlistener) throws CPException;
}
